home *** CD-ROM | disk | FTP | other *** search
- KERMIT v. 2.28 for the Victor 9000
-
- 20 January 1986
- Bryan G. Peterson
- (PETERSON@BYUVAX.BITNET)
-
- The support for KERMIT on the Victor 9000/Sirius microcomputers is contained
- in two assembly-language files, MSXV90.ASM and MSYV90.ASM. The support
- includes the full option list of baud rates (45.5 to 38400 baud), the use of
- either serial port, full HEATH emulation, and restoration of the screen to
- its previous condition when reconnecting to the same port after disconnecting.
- The SET KEY option has not been supported since that does not seem to be
- necessary with the Victor's soft keyboard.
-
- The default escape character is ^]. The use of a mode line during terminal
- emulation is supported (in reverse video). There is no support of screen
- rollback beyond the memory of what the screen looked like when connect mode
- is exited, and restoration of that screen when a connection is made to the
- same port. Printer control is only available through the logging capabilities
- of the basic KERMIT.
-
- Because of the way the Victor documentation refers to the two serial
- connectors on the system box, more options were added on the SET PORT
- command. These are
- COM1, TTY, A, or 1 - referring to the port in the center rear
- COM2, UL1, B, or 2 - referring to the port on the right
- You can use the one which makes the most sense to you.
-
- As near as I could determine, there is no way to poll the 8253 timer to
- determine the current baud rate on entry, so the routine GETBAUD has been set
- to return a default baud rate the first time it is called for each port, and
- to do absolutely nothing on subsequent calls. The default baud is set by
- the parameter DEF_BAUD defined near the start of the file. As it is being
- send, this parameter is set to 1200 baud (primarily due to the fact that I
- do my work over a modem).
-
- Terminal emulation is left entirely up to the BIOS of the Victor's operating
- system. Since the BIOS handles the HEATH/ZENITH-19 emulation, the KERMIT
- emulation just passes all incoming data directly to the BIOS. This is true
- whether HEATH emulation is set on or off.
-
- The proper link command for generating the executable file (MSV9000.EXE) is
-
- link msxdmb mscmd mscomm msfile mskerm msrecv mssend msserv msset msterm+
- msxv9000 msyv9000 msfinal,msv9000,msv9000/map;
-
-
- TEKTRONIX EXTENSION
-
- For those who would like to get more out of the Victor 9000, there is also
- a version of MSYV90.ASM which gives full Tektronix 4010 emulation. This
- module provides full text, graphics, and graphics input (GIN) emulation.
- The graphics are good quality, thanks to the quality of the Victor's screen,
- and the graphics input appears to be adequate for most needs. However, the
- text leaves a little to be desired in terms of readability. The font is
- home grown (my home) and I didn't have a lot of time to put into fine tuning
- the different characters for readability, but they can be deciphered with a
- little practice.
-
- There are three Victor-specific modules required to generate the Tektronix
- version. These are
- MSZV90.ASM - replaces MSXDMB to get the segments in the right order
- MSXV90.ASM - same one used for the regular KERMIT
- MSYV9T.ASM - provides the Tektronix emulation
- The first module is required to get the segment containing the graphics
- screen region as low as possible in memory. Because of the way the Victor
- screen controller works, it is necessary that the program be loaded so that
- the graphics screen falls entirely in either the first or second 64K of memory,
- but doesn't span the boundary between the two sections. If it does happen to
- load such that the boundary is spanned, it will do no damage to the system
- (i.e., write all over something critical), but the screen will have a bunch of
- random trash in the lower portion. The emulation is unusable in that condition
- and it will be necessary to find a way to get it loaded into the right region
- by adjusting the amount of memory used by permanently installed options such
- as CALC.
-
- The Tektronix emulation mode is entered by setting the HEATH mode off
- (i.e., SET HEATH OFF). There are two features of the emulation that must be
- explained to be useful.
-
- First is the effect of having text "scroll" off the bottom of the screen.
- Since the screen can't really scroll, the emulator will ring the bell once
- and print a small, all-white, horizontal rectangle in the lower left corner
- of the screen, just below the last line of text. The serial input buffer will
- continue to capture data and all handshaking and flow control will continue,
- but no characters will be processed to be placed on the screen. In order to
- clear the screen and continue processing it is necessary to press the key which
- generates the hex value 0F1H (function key #1 on the default Victor keyboard).
- The key used for clearing the page is defined by the parameter CLEAR defined
- near the top of the file MSYV9T.ASM.
-
- Second, when the emulator is placed in GIN mode by receipt of the appropriate
- command sequence from the host, a small cursor will be displayed at the current
- graphics cursor location. This cursor can be moved around using the arrow keys
- if they are defined to produce the proper HEATH codes (esc-A, esc-B, esc-C, and
- esc-D for up, down, right, and left respectively). The movement is done in
- Tektronix units rather than Victor units, so it may be necessary to hit the
- appropriate arrow key twice before the cursor will actually move. But this
- does give the user the capability of pinpointing a location on the screen
- with a maximum error of 1 Tektronix unit. In addition, since it is rather
- tedious to hit the arrow key 1023 times to move from one side of the screen to
- the other, hitting the escape key followed by a numeric key (1 through 9) will
- set the increment for the arrow keys to the value of the numeric key, e.g.,
- pressing esc followed by the '9' key, will cause the cursor to move 9 units for
- each press of the arrow key. This increment value will be retained between
- successive activations of the GIN mode. GIN mode is exited by pressing any key
- (other than the sequences for the arrow keys or for changing the increment
- value). If it is desirable to send an esc key as the GIN mode terminator, just
- strike the escape key twice.
-
- The command to create the Tektronix emulator version (MSV9TEK.EXE) is
-
- link mszv9000 mscmd mscomm msfile mskerm msrecv mssend msserv msset msterm +
- msxv9000 msyv9tek msfinal,msv9tek,msv9tek/map;
-
- I did not make the Tektronix version the only one available because of the
- extra 40000 bytes in the executable file size for the extra emulation and
- the graphics screen area. It takes a while to load the extra code which
- may be unacceptable for someone who never uses the graphics emulation.
-
- DISCLAIMER
-
- Due to the limited nature of the equipment available for testing, certain
- features of KERMIT have not been adequately tested. These include SERVER
- mode and some of the less common baud rates. It works very well for file
- transmissionand terminal emulation. In fact, since the serial I/O is
- interrupt driven and doesn't loose data as readily, I much prefer KERMIT
- over CROSSTALK in spite of the limited emulation available.
-